package com.app.brilliant.sys.service;
import com.app.brilliant.common.service.BaseService;
import com.app.brilliant.common.vo.PageContainer;
import com.app.brilliant.game.response.DevUserListInfo;
import com.app.brilliant.shiro.param.RegisterParam;
import com.app.brilliant.sys.bean.DevUser;
import com.app.brilliant.sys.params.DevUserListPageParam;
/**
 * @author GF
 * @description 针对表【dev_user(系统用户)】的数据库操作Service
 * @createDate 2025-07-25 11:53:21
 */
public interface DevUserService extends BaseService<DevUser> {
    boolean register(RegisterParam registerParam) throws Exception;

    PageContainer<DevUserListInfo> devUserList(DevUserListPageParam devUserListPageParam);

    boolean changeDevUserState(Integer uid, Integer state);
    /**
     * 绑定手机号
     * @param userId 用户ID
     * @param phone 手机号
     * @param code 验证码
     * @return 是否绑定成功
     */
    boolean bindPhone(Integer userId, String phone, String code);

    /**
     * 发送绑定手机号验证码
     * @param phone 手机号
     * @return 是否发送成功
     */
    boolean sendBindPhoneCode(String phone);

    /**
     * 根据用户名查询用户
     */
    DevUser getByUsername(String username);

    /**
     * 根据邮箱查询用户
     */
    DevUser getByEmail(String email);

    /**
     * 根据微信OpenId查询用户
     */
    DevUser getByOpenId(String openId);

    /**
     * 根据盐值查询用户
     */
    DevUser getDevUserBySalt(String salt);
}